# 第一阶段：构建阶段（使用Maven环境打包）
FROM maven:3.8.1-alpine AS builder
WORKDIR /app

# 复制依赖文件并缓存（优化构建速度）
COPY ./pom.xml /app/pom.xml
# 提前下载依赖（后续代码变更时无需重复下载）
RUN mvn dependency:go-offline

# 复制源代码并打包
COPY ./src /app/src
RUN mvn clean package -DskipTests


# 第二阶段：运行阶段（仅保留JDK和构建产物，减小镜像体积）
FROM amazoncorretto:17-alpine
WORKDIR /app

# 从构建阶段复制打包好的jar文件到当前阶段
COPY --from=builder /app/target/image-search-mcp-server-0.0.1-SNAPSHOT /app/app.jar

# 暴露应用端口（微信云托管需要与配置的端口一致）
EXPOSE 8124

# 启动命令（使用生产环境配置）
CMD ["java", "-jar", "/app/app.jar", "--spring.profiles.active=prod"]
